import axios from 'axios'
import Vue from 'vue'
let v=new Vue()

axios.defaults.timeout=50000
axios.defaults.baseURL='/api2/'

class HTTP{
	request({url,data={},method='GET'}){
		if(method=='GET'){
			return axios.get(url).catch(err=>{
				console.log(err.response.data.error_code)
				this._show_error(err.response.data.error_code)
			})
		}
	  if(method=='POST'){
	  	return axios.post(url,data).catch(err=>{
				console.log(err.response.data.error_code)
				this._show_error(err.response.data.error_code)
			})
	  }
	}
	_show_error(error_code){
		if(!error_code){
			error_code=1
		}
		const tip=tips[error_code]
		v.$message.error(tip?tip:tips[1])//elementUI tips
	}

}

const tips={
	1:'抱歉，出现了一个错误',
	200:'请求成功',
	201:'创建成功',
	202:'更新成功',
	204:'删除成功',
	301:'永久重定向',
	400:'请求包含不支持的参数',
	401:'未授权',
	403:'被禁止访问',
	404:'请求的资源不存在',
	413:'上传的File体积太大',
	500:'内部错误',
	1000:'输入参数错误',
	1001:'输入的json格式不正确',
	1002:'找不到资源',
	1003:'未知错误',
	1004:'禁止访问',
	1005:'不正确的开发者key',
  1006:'服务器内部错误',
  1007:'请检查请求url',
  2000:'你已经点过赞了',
  2001:'你还没点过赞',
  3000:'该期内容不存在'
}


export {HTTP}
